// 删除TODO
async function deleteTodo(todoId) {
    if (confirm('确定要删除这个任务吗？')) {
        try {
            const response = await fetch(`/todos/${todoId}`, {
                method: 'DELETE'
            });

            if (response.ok) {
                window.location.reload();
            } else {
                alert('删除失败');
            }
        } catch (error) {
            alert('网络错误');
        }
    }
}

// 切换完成状态
async function toggleComplete(todoId) {
    try {
        // 这里需要先获取当前状态，然后更新
        // 由于后端没有更新接口，这里需要先获取详情
        const response = await fetch(`/todos/${todoId}`);
        if (response.ok) {
            const todo = await response.json();
            const newCompleted = !todo.completed;

            // 发送更新请求（需要后端支持PUT/PATCH）
            // 这里只是示例，实际需要后端支持更新操作
            alert('更新功能需要后端支持PUT/PATCH接口');
        }
    } catch (error) {
        alert('网络错误');
    }
}

// 表单验证
document.addEventListener('DOMContentLoaded', function() {
    const form = document.querySelector('.todo-form');
    if (form) {
        form.addEventListener('submit', function(e) {
            const titleInput = document.getElementById('title');
            if (!titleInput.value.trim()) {
                e.preventDefault();
                alert('请输入任务标题');
                titleInput.focus();
            }
        });
    }
});

// 平滑滚动和动画
document.addEventListener('DOMContentLoaded', function() {
    // 添加加载动画
    document.body.style.opacity = '0';
    document.body.style.transition = 'opacity 0.3s ease';

    setTimeout(() => {
        document.body.style.opacity = '1';
    }, 100);
});

// 键盘快捷键
document.addEventListener('keydown', function(e) {
    // Ctrl/Cmd + N 新建任务
    if ((e.ctrlKey || e.metaKey) && e.key === 'n') {
        e.preventDefault();
        window.location.href = '/todos/create';
    }

    // Escape 返回
    if (e.key === 'Escape') {
        if (window.location.pathname !== '/') {
            window.history.back();
        }
    }
});